package vista;
import java.awt.Dimension;
import java.awt.Toolkit;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.List;

import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JSeparator;
import javax.swing.JTable;
import javax.swing.JTextField;
import javax.swing.SwingConstants;
import javax.swing.WindowConstants;
import javax.swing.border.LineBorder;
import javax.swing.table.DefaultTableModel;
import javax.swing.table.TableModel;
import javax.swing.SwingUtilities;

import negocio.beans.central.Proveedor;
import negocio.beans.central.RemitoProveedor;
import negocio.beans.oficinaventa.OrdenDePedido;
import xml.XMLClass;
import controlador.CasaCentral;


public class ComprarMercaderia extends javax.swing.JFrame {


	private static final long serialVersionUID = 1L;
	private JSeparator jSeparator2;
	private JSeparator jSeparator3;
	private JSeparator jSeparator1;
	private JLabel lblTitulo;
	private JLabel lblResultado;
	private JButton btnComprar;
	
	private JTable tblOrdenesDePedido;
	
	public static void main(String[] args) {
		SwingUtilities.invokeLater(new Runnable() {
			public void run() {
				ComprarMercaderia inst = new ComprarMercaderia();
				inst.setLocationRelativeTo(null);
				inst.setVisible(true);
			}
		});
	}
	
	public ComprarMercaderia() {
		super();
		initGUI();
		CentrarJFrame();
		
		LlenarOrdenesDePedidoPendiente();
	}
	
	private void initGUI() {
		try {
			setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
			getContentPane().setBackground(new java.awt.Color(202,203,251));
			getContentPane().setLayout(null);
			this.setTitle("Compra de Mercaderia");
			this.setResizable(false);
			TableModel tblProveedoresModel = 
					new DefaultTableModel(
							new String[][] { { "Id OP"}},
							new String[] { "OP"});
				tblOrdenesDePedido = new JTable();
				getContentPane().add(tblOrdenesDePedido);
				tblOrdenesDePedido.setModel(tblProveedoresModel);
				tblOrdenesDePedido.setBounds(17, 68, 290, 158);
			{
				btnComprar = new JButton();
				getContentPane().add(btnComprar);
				btnComprar.setText("Comprar");
				btnComprar.setBounds(142, 250, 109, 21);
				btnComprar.setVisible(true);
				btnComprar.addActionListener(new ActionListener() {
					public void actionPerformed(ActionEvent evt) {
						
						CasaCentral.getInstancia().generarOrdenesDeCompra(Integer.parseInt( tblOrdenesDePedido.getValueAt(tblOrdenesDePedido.getSelectedRow(),0).toString()));						
						
						lblResultado.setText("Se han generado las ordenes de compra");
						
					}
				});
			}
			
			{
				lblResultado = new JLabel();
				getContentPane().add(lblResultado);
				lblResultado.setBounds(74, 280, 239, 17);
				lblResultado.setHorizontalAlignment(SwingConstants.CENTER);
			}
			{
				lblTitulo = new JLabel();
				getContentPane().add(lblTitulo);
				lblTitulo.setText("Generar Ordenes de Compra");
				lblTitulo.setBounds(48, 12, 295, 19);
				lblTitulo.setFont(new java.awt.Font("Book Antiqua",1,14));
				lblTitulo.setHorizontalAlignment(SwingConstants.CENTER);
				lblTitulo.setOpaque(true);
				lblTitulo.setBackground(new java.awt.Color(255,255,255));
				lblTitulo.setBorder(new LineBorder(new java.awt.Color(0,0,0), 1, false));
			}
			{
				jSeparator1 = new JSeparator();
				getContentPane().add(jSeparator1);
				jSeparator1.setBounds(193, 32, 2, 23);
				jSeparator1.setOrientation(SwingConstants.VERTICAL);
			}
			{
				jSeparator2 = new JSeparator();
				getContentPane().add(jSeparator2);
				jSeparator2.setBounds(342, 17, 31, 10);
			}
			{
				jSeparator3 = new JSeparator();
				getContentPane().add(jSeparator3);
				jSeparator3.setBounds(13, 22, 66, 9);
			}
			pack();
			this.setSize(400, 350);
		} catch (Exception e) {
		  
			e.printStackTrace();
		}
	}
	
	private void LlenarOrdenesDePedidoPendiente()
	{
		List<OrdenDePedido> ops = CasaCentral.getInstancia().obtenerOrdenesDePedidoPendientes();
		
		DefaultTableModel temp = (DefaultTableModel) tblOrdenesDePedido.getModel();
		
		for(OrdenDePedido op : ops){
									
			Object nuevo[]= {op.getNroOrdenDePedido()};
			temp.addRow(nuevo);
		}
	}

	private void CentrarJFrame(){

	    Dimension dim = Toolkit.getDefaultToolkit().getScreenSize();
	    

	    int w = this.getSize().width;
	    int h = this.getSize().height;
	    int x = (dim.width-w)/2;
	    int y = (dim.height-h)/2;
	    

	    this.setLocation(x, y);
	}
	
}
